import socket
import random


# 创建实例
# socket.AF_INET: ipv4
# SOCK_STREAM: 默认，表示tcp，socket.SOCK_DGRAM：表示udp
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 设置地址和端口
ip_port = ("127.0.0.1", 8881)
# 绑定监听
server.bind(ip_port)
# 设置最大监听数
# server.listen(5)

print("准备连接....")

# udp 无需建立连接
# while True:
# 接收数据
# conn, addr = server.accept()
# 如果是python3.X以上版本，需要将str类型转为byte
#  msg = "连接成功!"
# 发送数据
# conn.send(msg.encode())

# 不断的接收消息
while True:
    # udp此处不会阻塞，导致一直在发送消息
    data = server.recv(1024)
    print(data.decode())

    # 如果接收的是exit，则退出，如果要进行一对多的通信，服务端就不要退出啦
    if data == b'exit':
        break

    # # 如果接收的是其他消息，则先发送第一个原数据
    # server.sendto(data, ip_port)
    # print('send first msg success')
    # # 发送第二个随机数
    # server.sendto(str(random.randint(1, 1000)).encode(), ip_port)
    # print('send second msg success')

# udp 无需关闭连接
# conn.close()


# 准备连接....
# 127.0.0.1
# localhost
# do you love python?
# exit
#
# Process finished with exit code 0